package WsrzEjbInterface;

import gov.sat.tax.fwsk.common.ConnectionPoolBean;
import gov.sat.tax.fwsk.rz.GSRzFpdklMxDataBean;
import gov.sat.tax.fwsk.rz.WsrzQyUserManageCmdBean;
import gov.sat.tax.fwsk.wlrz.CmpHandler;
import gov.sat.tax.fwsk.wlrz.InFpDataBean;
import gov.sat.tax.fwsk.wlrz.JmFpDataBean;
import gov.sat.tax.fwsk.wlrz.JmHandler;
import gov.sat.tax.fwsk.wlrz.JmjBean;
import gov.sat.tax.fwsk.wlrz.JmjPoolCycle;
import gov.sat.tax.fwsk.wlrz.TransRzParaBean;
import gov.sat.tax.fwsk.wlrz.WlrzConst;

import java.rmi.RemoteException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.GregorianCalendar;
import java.util.List;

import javax.ejb.CreateException;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;

public class hnWsrzInterfaceBean implements SessionBean {
	private static final long serialVersionUID = -2582794413567200261L;
	private SessionContext mySessionCtx;

	public SessionContext getSessionContext() {
		return this.mySessionCtx;
	}

	public void setSessionContext(SessionContext ctx) {
		this.mySessionCtx = ctx;
	}

	public void ejbCreate() throws CreateException {
	}

	public void ejbActivate() {
	}

	public void ejbPassivate() {
	}

	public void ejbRemove() {
	}
	
	/***
	 * ��ʾXML��Ϣ
	 */
	public String dispXmlMessage(String nsr, String err_no, String title,
			String rzsj, String czyDm, String czyPwd) throws RemoteException {
		String xml = "<?xml version=\"1.0\" encoding=\"GBK\"?><body><response><nsrsbh>"
				+ nsr
				+ "</nsrsbh><resno>"
				+ err_no
				+ "</resno><title>"
				+ title
				+ "</title><rzsj>" + rzsj + "</rzsj></response></body>";
		return xml;
	}

	/**
	 * ����϶�����
	 * @param con
	 * @param nsr
	 * @return
	 * @throws SQLException
	 */
	public String getRdDate(Connection con, String nsr) throws SQLException {
		PreparedStatement stmt = null;
		String sqls = "";
		String rds = "no";
		try {
			if (con == null) {
				System.out.println("[WARN] ��Ʊ���ں��϶����ڱȽ���ݿ����Ӵ�");
				return "error";
			}
			sqls = " select to_char(pz_rq,'yyyy-mm-dd') as rzdate from htjs.ht_ybnsr_dab where nsrsbh='"
					+ nsr + "' and YXBZ='N' ";

			stmt = con.prepareStatement(sqls);
			ResultSet rs = stmt.executeQuery();
			while (rs.next()) {
				rds = rs.getString("rzdate");
			}
			rs = null;
		} catch (SQLException e) {
			System.out.println("[WARN] ȡ�϶����ڳ����쳣��" + e.toString());
			return "error";
		} finally {
			if (stmt != null) {
				stmt.close();
			}
		}
		if (stmt != null) {
			stmt.close();
		}
		return rds;
	}

	public int compDate(String inDate) {
		GregorianCalendar curDate = null;
		GregorianCalendar validDate = null;
		int inYear = Integer.parseInt(inDate.substring(0, 4));
		int inMonth = Integer.parseInt(inDate.substring(5, 7));
		int inDay = Integer.parseInt(inDate.substring(8, 10));
		validDate = new GregorianCalendar(inYear, inMonth - 1, inDay);
		validDate.add(6, 1);
		curDate = new GregorianCalendar();
		if (curDate.before(validDate)) {
			curDate.add(5, 15);
			return curDate.after(validDate) ? 0 : 1;
		}
		return -1;
	}

	/**
	 * ������֤��Ʊ�ֿ�����ϸ
	 * @param curFpData
	 * @param swjg_dm
	 * @param czydm
	 * @param czymc
	 * @return
	 */
	private GSRzFpdklMxDataBean setRzFpDklMx(InFpDataBean curFpData,
			String swjg_dm, String czydm, String czymc) {
		java.sql.Date curDate = new java.sql.Date(System.currentTimeMillis());
		String strDate = curDate.toString();
		String cYear = strDate.substring(0, 4);
		String cMonth = strDate.substring(5, 7);
		int rzyf = (Integer.parseInt(cYear) - 1900) * 16
				+ Integer.parseInt(cMonth);

		String kpRq = curFpData.getKprq();
		String mYear = kpRq.substring(0, 2);
		String mMonth = kpRq.substring(2, 4);
		String mDay = kpRq.substring(4, 6);
		String curSKpRq = "20" + mYear + "-" + mMonth + "-" + mDay;

		GSRzFpdklMxDataBean tmpBean = new GSRzFpdklMxDataBean();
		tmpBean.setRz_Nsrsbh(curFpData.getRz_nsrsbh());
		tmpBean.setFpdm(curFpData.getFp_dm());
		tmpBean.setFphm(curFpData.getFp_hm());
		tmpBean.setSwjg_Dm(swjg_dm);
		tmpBean.setRz_Nsrsbh(curFpData.getRz_nsrsbh());
		tmpBean.setRz_Fs(5);
		tmpBean.setRz_Jg(0);
		tmpBean.setJglb("0");
		tmpBean.setRz_Wxyy(0);
		tmpBean.setRz_Rgjz_Bz("N");

		tmpBean.setRz_Yf(rzyf);
		tmpBean.setJskh("");

		tmpBean.setFp_Kprq(curSKpRq);
		tmpBean.setGf_Nsrsbh(curFpData.getGf_nsrsbh());
		tmpBean.setXf_Nsrsbh(curFpData.getXf_nsrsbh());

		tmpBean.setJe(curFpData.getFp_je());
		tmpBean.setSe(curFpData.getFp_se());
		tmpBean.setSl(Integer.parseInt(curFpData.getFp_sl()));
		if (curFpData.getQd_bz().equals("Y")) {
			tmpBean.setFp_Mw(curFpData.getFpmw().substring(0, 108));
		} else {
			tmpBean.setFp_Mw(curFpData.getFpmw());
		}
		tmpBean.setQd_bz(curFpData.getQd_bz());
		tmpBean.setWpmxs(curFpData.getHzInfoList());

		tmpBean.setIs_Zh(curFpData.getIs_Zh());
		tmpBean.setZhLst(curFpData.getZhLst());

		tmpBean.setCrcsum("");
		tmpBean.setCzy_Dm("server");
		tmpBean.setCzy_Mc(czymc);
		return tmpBean;
	}

	public String getCurDateTime() {
		java.sql.Date dt = new java.sql.Date(System.currentTimeMillis());
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		String rz_sjstr = sdf.format(dt);
		return rz_sjstr;
	}

	private String TransQuotePrintable(String mw) throws Exception {
		byte[] byteCode = (byte[]) null;
		int count = 0;
		String tem = "";
		String tems = "";
		String srent = "";
		count = mw.length();
		byteCode = new byte[1];
		int j = 0;
		for (int i = 0; i < count;) {
			tem = mw.substring(i, i + 1);
			if (tem.equals("%")) {
				tems = mw.substring(i + 1, i + 3);
				i += 3;
				byteCode[0] = Integer.valueOf(tems, 16).byteValue();
				String str = new String(byteCode);
				srent = srent + str;
				j++;
			} else {
				i++;
				tems = tem;
				srent = srent + tems;
			}
		}
		return srent;
	}

	private String replaceInvlidCharacter(String original) {
		String newString = original.replaceAll("\t", "");
		newString = newString.replaceAll("\t", "");
		newString = newString.replaceAll(" ", "");
		newString = newString.replaceAll("��", "");

		return newString;
	}

	
	private List getInHzInfoList(String sh, String gfmc, String xfmc,
			String mxdata) {
		int mxcount = 0;
		try {
			mxcount = Integer.parseInt(mxdata.substring(0, 1));
		} catch (Exception E) {
			System.out.println("��Ʒ��ϸ����쳣 " + sh + " " + mxdata);
			return new ArrayList();
		}
		String[] mxs = (mxdata.substring(1) + " ").split("¤");
		if (mxcount * 3 != mxs.length) {
			System.out.println("��Ʒ��ϸ����쳣 " + sh + " " + mxdata);
			return new ArrayList();
		}
		List rtn = new ArrayList();
		rtn.add(replaceInvlidCharacter(gfmc));
		rtn.add(replaceInvlidCharacter(xfmc));
		rtn.add(mxdata.subSequence(0, 1));
		for (int i = 0; i < mxs.length; i++) {
			rtn.add(replaceInvlidCharacter(mxs[i].trim()));
		}
		return rtn;
	}

	private InFpDataBean makeFpDataBeanHy(TransRzParaBean rq) throws Exception {
		InFpDataBean tmpFpBean = new InFpDataBean();
		String in_Fpdm = "";
		String in_Fphm = "";
		String in_Kpsj = "";
		String in_GfTax = "";
		String in_XfTax = "";
		String in_Fpje = "0";
		String in_Fpse = "0";
		String fpmw = "";
		String in_Fpsl = "";
		String in_Year = "2000";
		String in_Month = "01";
		String in_Day = "01";

		double fpje = 0.0D;
		double fpse = 0.0D;

		String mw1 = rq.getParameter("miwen1") == null ? "" : rq
				.getParameter("miwen1");
		String mw2 = rq.getParameter("miwen2") == null ? "" : rq
				.getParameter("miwen2");
		String mw3 = rq.getParameter("miwen3") == null ? "" : rq
				.getParameter("miwen3");
		String mw4 = rq.getParameter("miwen4") == null ? "" : rq
				.getParameter("miwen4");

		boolean hzfw = "hzfw".equals(rq.getParameter("action"));
		if (hzfw) {
			fpmw = mw1;

			tmpFpBean.setHzInfoList(getInHzInfoList(rq.getParameter("nsrsbh"),
					mw2, mw3, mw4));
		} else {
			fpmw = mw1 + mw2 + mw3 + mw4;
			mw2 = "";
			mw3 = "";
			mw4 = "";
		}
		tmpFpBean.setQd_bz(hzfw ? "Y" : "N");

		fpmw = TransQuotePrintable(fpmw);

		in_Year = rq.getParameter("kpyear") == null ? "2001" : rq
				.getParameter("kpyear");
		in_Month = rq.getParameter("kpmonth") == null ? "01" : rq
				.getParameter("kpmonth");
		in_Day = rq.getParameter("kpday") == null ? "01" : rq
				.getParameter("kpday");
		in_Kpsj = in_Year.substring(2) + in_Month + in_Day;

		in_Fpdm = rq.getParameter("fpdm") == null ? "" : rq
				.getParameter("fpdm");
		in_Fphm = rq.getParameter("fphm") == null ? "" : rq
				.getParameter("fphm");
		in_GfTax = rq.getParameter("gsbh") == null ? "" : rq
				.getParameter("gsbh");
		in_XfTax = rq.getParameter("xsbh") == null ? "" : rq
				.getParameter("xsbh");
		in_Fpje = rq.getParameter("jine") == null ? "0" : rq
				.getParameter("jine");
		in_Fpse = rq.getParameter("shuie") == null ? "0" : rq
				.getParameter("shuie");
		in_Fpsl = "17";

		String tmpnsh = rq.getParameter("nsrsbh") == null ? "" : rq
				.getParameter("nsrsbh");
		try {
			fpje = Double.parseDouble(in_Fpje);
			fpse = Double.parseDouble(in_Fpse);
		} catch (Exception e) {
			fpje = 0.0D;
			fpse = 0.0D;
			System.out.println("[WARN] �ύ�Ľ�˰����ݷǷ�, ����: " + in_Fpje + ", "
					+ in_Fpse);
		}
		tmpFpBean.setRz_nsrsbh(tmpnsh);
		tmpFpBean.setGf_nsrsbh(in_GfTax);
		tmpFpBean.setXf_nsrsbh(in_XfTax);
		tmpFpBean.setFp_dm(in_Fpdm);
		tmpFpBean.setFp_hm(in_Fphm);
		tmpFpBean.setKprq(in_Kpsj);
		tmpFpBean.setFp_je(fpje);
		tmpFpBean.setFp_se(fpse);
		tmpFpBean.setFp_sl(in_Fpsl);
		tmpFpBean.setFpmw(fpmw);
		return tmpFpBean;
	}

	public static void main(String[] args) {
		hnWsrzInterfaceBean hn = new hnWsrzInterfaceBean();
		try {
			hn.Invoice_Auth("HY5353b901000011008a01000000000000000000000000000004f77c95489e29399df258e3c7fda1055f79ab5f5a162d73582ed408b005b10006ab5761e570ceb8452de0992cbea53b4b71b97427f0bdb6d87be74841e7bac5f2a6c4581534a8ef6e857494369de7b30e9cb0389998c3aca08f1106a87553260ae5d404701dcb6729d87c0d1f1bed5698c6df3ff5501d9571b8ccc54c34c19ab27f8d7c71254dbae10e9735381a58f12ee7ce014cdf939520826a7acec33436357e9a2a981c4d6229c30b18701bc4ec90cae2f6c40691d17ac60d35c0fc7f3621b504bb14321c94c85d67b8037ef6c16e8748efed425dd61701b1d1b3c626160b3989de93478283b18c21262f65848dce6f1f786b73f8dcd2fffbaf4c5a154b166afb014f6609896f26b83ebfde924a8f1f4f2e0445d09a57b116a878e88d5603dbdcb2991241ba30f83e6d64bf2dba0edc7a9e31d8da134f41232e33c5cb9638398bc2323e0d22f506ed55dad913f1ef4fbad7f39a8e1e485c2e19baab92ed3e8afc6675a7c1c3071aee46dba1ac85ad3821e6ff4f7ee37016fe7e00dd67143f8426b17f764fe651f23dc1806e17a4c310dee10274eefde709432ea766a49021");
		} catch (RemoteException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}

	public String Invoice_Auth(String cryptograph) throws SQLException,
			RemoteException {
		JmjPoolCycle pool = JmjPoolCycle.createInstance();
		String result_xml = "<?xml version=\"1.0\" encoding=\"GBK\"?><body><response><nsrsbh></nsrsbh><resno></resno><title></title><rzsj></rzsj></response></body>";
		boolean security = true;
		String swjg_dm = "";
		String nsrsbh = "";
		String czyDm = "";
		String czyMc = "";
		String czyPwd = "";

		InFpDataBean inFpData = null;//从密文和参数获取的发票信息
		JmFpDataBean jmFpData = null;///从二维码汉字密文获取的发票信息
		long ulms = System.currentTimeMillis();
		boolean hzfw = false;
		String rsj = null;
		String fpzl = "YB";

		boolean isNewClient = false;

		String gdzc = "";

		TransRzParaBean ts = null;
		if (cryptograph != null) {
			if (cryptograph.startsWith("HY")) {
				cryptograph = cryptograph.substring(2);
				ts = new TransRzParaBean("");
			} else if (cryptograph.length() > 580) {
				ts = new TransRzParaBean(88);
			} else {
				ts = new TransRzParaBean();
			}
			ts.doDecrypt(cryptograph);
			if ("hzfw".equals(ts.getParameter("action"))) {
				hzfw = true;
				System.out.println("[INFO] ���ַ�α��Ʊ��֤");
			} else {
				System.out.println("[INFO]�Ǻ��ַ�α��Ʊ��֤");
			}
		}
		try {
			nsrsbh = ts.getParameter("nsrsbh") != null ? ts
					.getParameter("nsrsbh") : "";
			czyDm = "ejb";
			czyPwd = "server";
		} catch (Exception e) {
			result_xml = dispXmlMessage(nsrsbh, "800", "�ӿڲ����쳣��",
					getCurDateTime(), "other", "other");
			System.out.println("[WARN] �ӿڲ����쳣: " + e.toString());
			return result_xml;
		}
		ConnectionPoolBean handler = null;//数据库存储工具类
		Connection conn = null;
		JmjBean jmj = null;///解密机信息对象
		try {
			handler = ConnectionPoolBean.getHandle();
			conn = handler.getConnection();
			if (conn == null) {
				result_xml = dispXmlMessage(nsrsbh, "500", "��ݿ����Ӵ��󣬲��ܽ�����֤������",
						getCurDateTime(), czyDm, czyPwd);
				System.out.println("[WARN] ��ݿ����Ӵ���: " + nsrsbh + ", ����Ա:"
						+ czyDm + ", ��¼ʱ��:" + getCurDateTime());
				WsrzQyUserManageCmdBean curCzyDB;
				return result_xml;
			}
			WsrzQyUserManageCmdBean curCzyDB = new WsrzQyUserManageCmdBean();
			curCzyDB = WsrzQyUserManageCmdBean.doQueryByCzydm(conn, nsrsbh,
					czyDm, czyPwd, WlrzConst.isNeedPwd());
			if (curCzyDB == null) {
				result_xml = dispXmlMessage(nsrsbh, "510", "����Ա�Ƿ������ܽ�����֤������",
						getCurDateTime(), czyDm, czyPwd);
				System.out.println("[WARN] �Ƿ�����Ա: " + nsrsbh + ", ����Ա:" + czyDm
						+ ", ��¼ʱ��:" + getCurDateTime());
				return result_xml;
			}
			// WsrzQyUserManageCmdBean curCzyDB;
			czyMc = "newServerEjb";
			swjg_dm = curCzyDB.getSwjg_dm();

			String active = curCzyDB.getYxbz();
			if (!active.equals("Y")) {
				result_xml = dispXmlMessage(nsrsbh, "520",
						"��ǰ��˰����֤�����ѱ�˰���ؽ��ã�����˰������ϵ��", getCurDateTime(), czyDm,
						czyPwd);
				System.out.println("[INFO] ��˰��ʶ���:" + nsrsbh + "�ѱ�˰���ؽ���");
				return result_xml;
			}
			// String active;
			// WsrzQyUserManageCmdBean curCzyDB;
			int i_validDate = -1;
			i_validDate = compDate(curCzyDB.getJzrq());
			if (i_validDate == -1) {
				result_xml = dispXmlMessage(nsrsbh, "525", "�û��ѳ�����Ч�ڣ�",
						getCurDateTime(), czyDm, czyPwd);
				System.out.println("[WARN] 525�����û�: " + nsrsbh + ", ����Ա:"
						+ czyDm + ", ��¼ʱ��:" + getCurDateTime());
				return result_xml;
			}
			// int i_validDate;
			// String active;
			// WsrzQyUserManageCmdBean curCzyDB;
			String fpmw = "";

			String fpid = ts.getParameter("fpid");

			String mw1 = ts.getParameter("miwen1") == null ? "" : ts
					.getParameter("miwen1");
			String mw2 = ts.getParameter("miwen2") == null ? "" : ts
					.getParameter("miwen2");
			String mw3 = ts.getParameter("miwen3") == null ? "" : ts
					.getParameter("miwen3");
			String mw4 = ts.getParameter("miwen4") == null ? "" : ts
					.getParameter("miwen4");
			if (hzfw) {
				fpmw = mw1;
			} else {
				fpmw = mw1 + mw2 + mw3 + mw4;
				mw2 = "";
				mw3 = "";
				mw4 = "";
			}
			fpmw = TransQuotePrintable(fpmw);

			gdzc = ts.getParameter("gdzc");
			if (gdzc != null) {
				if (gdzc.equals("0")) {
					gdzc = "Y";
				} else if (gdzc.equals("1")) {
					gdzc = "N";
				}
			}
			
			//从密文数据中获取发票信息
			inFpData = makeFpDataBeanHy(ts);
			if ((hzfw)
					&& ((inFpData.getHzInfoList() == null) || (inFpData
							.getHzInfoList().size() == 0))) {
				result_xml = dispXmlMessage(nsrsbh, "1000", "��Ʒ��ʽ�쳣��",
						getCurDateTime(), czyDm, czyPwd);
				System.out.println("[ERROR]���ַ�α��Ʊ��δ�ϴ���Ʒ��Ϣ nsr:" + nsrsbh
						+ " fpdm:" + inFpData.getFp_dm() + " fphm:"
						+ inFpData.getFp_hm());
				return result_xml;
			}
			// String mw4;
			// String mw3;
			// String mw2;
			// String mw1;
			// String fpid;
			// String fpmw;
			// int i_validDate;
			// String active;
			// WsrzQyUserManageCmdBean curCzyDB;
			if (!nsrsbh.equals(inFpData.getGf_nsrsbh())) {
				result_xml = dispXmlMessage(nsrsbh, "610",
						"�ύ��˰���빺����˰�˲���,���ܽ���������֤��", getCurDateTime(), czyDm,
						czyPwd);
				System.out.println("[WARN] ��������: " + nsrsbh + ", ����Ա:" + czyDm
						+ ", ��¼ʱ��:" + getCurDateTime());
				return result_xml;
			}
			// String mw4;
			// String mw3;
			// String mw2;
			// String mw1;
			// String fpid;
			// String fpmw;
			// int i_validDate;
			// String active;
			// WsrzQyUserManageCmdBean curCzyDB;
			int jmStatus = 0;
			String rzSj = "";
			jmFpData = new JmFpDataBean();
			JmHandler curJmHandler = new JmHandler();

			jmj = pool.getJmj();
			String jmjip = "";
			if (jmj != null) {
				jmjip = jmj.getJmjIP();
				if (jmj.isServer()) {
					curJmHandler.doJmProc_Jms(fpmw, jmjip, hzfw);
				} else {
					curJmHandler.doJmProc(nsrsbh, fpmw, fpid, jmjip, hzfw);
				}
				pool.releaseJmj(jmj);
			} else {
				curJmHandler.setStatus(530);
			}
			jmStatus = curJmHandler.getStatus();
			switch (jmStatus) {
			case 0:
				jmFpData = curJmHandler.getCurJmData();

				int wxyy = 0;
				int rzjg = 0;
				int save_Code = 0;
				int i_err_no = jmFpData.getErrNo();
				switch (i_err_no) {
				case 0:
				case 1000:
				case 1001:
				case 1002:
					String rddate = getRdDate(conn, nsrsbh);
					if ((rddate.equals("no")) || (rddate.equals("error"))) {
						result_xml = dispXmlMessage(nsrsbh, "525",
								"ȡ����ҵ�϶����ڳ����쳣��", getCurDateTime(), czyDm,
								czyPwd);
						System.out.println("[WARN] ȡ����ҵ�϶����ڳ����쳣: " + nsrsbh
								+ ", ����Ա:" + czyDm + ", ��¼ʱ��:"
								+ getCurDateTime());
						return result_xml;
					}
					// String rddate;
					// int i_err_no;
					// int save_Code;
					// String jmjip;
					// JmHandler curJmHandler;
					// String rzSj;
					// int jmStatus;
					// String mw4;
					// String mw3;
					// String mw2;
					// String mw1;
					// String fpid;
					// String fpmw;
					// int i_validDate;
					// String active;
					// WsrzQyUserManageCmdBean curCzyDB;
					java.sql.Date rdDate = java.sql.Date.valueOf(rddate);

					
					/////////比对过程///////////////////////////////
					CmpHandler cmpHandler = new CmpHandler();

					cmpHandler.setNewClient(isNewClient);

					cmpHandler.setInData(inFpData);
					cmpHandler.setJmData(jmFpData);
					cmpHandler.setRdDate(rdDate);
					cmpHandler.doCmpProc();

					inFpData.setIs_Zh(jmFpData.getIs_Zh());
					inFpData.setZhLst(jmFpData.getZhLst());
					inFpData.setHzInfoList(jmFpData.getHzInfoList());

					wxyy = cmpHandler.getWxyy();
					rzjg = cmpHandler.getRzjg();
					String err_subType = null;
					if ((wxyy == -1) && (rzjg == -5)) {
						result_xml = dispXmlMessage(nsrsbh, "670",
								"ȡ���϶��ʸ�ǰ���ߵķ�Ʊ�����ܽ�����֤", getCurDateTime(), czyDm,
								czyPwd);
						System.out.println("[WARN] �϶�ǰ��Ʊ: " + nsrsbh + ", ����Ա:"
								+ czyDm + ", ��¼ʱ��:" + getCurDateTime());
						return result_xml;
					}
					/////////比对过程///////////////////////////////
					// String err_subType;
					// CmpHandler cmpHandler;
					// java.sql.Date rdDate;
					// String rddate;
					// int i_err_no;
					// int save_Code;
					// int rzjg;
					// int wxyy;
					// String jmjip;
					// JmHandler curJmHandler;
					// String rzSj;
					// int jmStatus;
					// String mw4;
					// String mw3;
					// String mw2;
					// String mw1;
					// String fpid;
					// String fpmw;
					// int i_validDate;
					// String active;
					// WsrzQyUserManageCmdBean curCzyDB;
					if ((wxyy == -1) && ((rzjg == -6) || (rzjg == -7))) {
						result_xml = dispXmlMessage(nsrsbh, "660",
								"����ֿ����޵ķ�Ʊ�����ܽ�����֤", getCurDateTime(), czyDm,
								czyPwd);
						System.out.println("[WARN] ����ֿ�����: " + nsrsbh
								+ ", ����Ա:" + czyDm + ", ��¼ʱ��:"
								+ getCurDateTime());
						return result_xml;
					}
					// String err_subType;
					// CmpHandler cmpHandler;
					// java.sql.Date rdDate;
					// String rddate;
					// int i_err_no;
					// int save_Code;
					// int rzjg;
					// int wxyy;
					// String jmjip;
					// JmHandler curJmHandler;
					// String rzSj;
					// int jmStatus;
					// String mw4;
					// String mw3;
					// String mw2;
					// String mw1;
					// String fpid;
					// String fpmw;
					// int i_validDate;
					// String active;
					// WsrzQyUserManageCmdBean curCzyDB;
					inFpData.setFp_sl(jmFpData.getFp_sl());
					if (rzjg == 0) {
						inFpData.setFp_je(jmFpData.getFp_je());
						inFpData.setFp_se(jmFpData.getFp_se());

						inFpData.setHzInfoList(jmFpData.getHzInfoList());
						err_subType = "0";
					} else if ((!inFpData.getFp_dm()
							.equals(jmFpData.getFp_dm()))
							|| (!inFpData.getFp_hm()
									.equals(jmFpData.getFp_hm()))
							|| (!inFpData.getGf_nsrsbh().equals(
									jmFpData.getGf_nsrsbh()))) {
						err_subType = "1";
					} else {
						err_subType = "2";
					}
					// String err_subType;
					// String rzSj;
					// int save_Code;
					// int rzjg;
					if (rzjg == 0) {
						GSRzFpdklMxDataBean tmpFpDklMxDataBean = new GSRzFpdklMxDataBean();

						tmpFpDklMxDataBean = setRzFpDklMx(inFpData, swjg_dm,
								czyDm, czyMc);

						double se = inFpData.getFp_se();
						if (jmFpData.getErrNo() == 0) {
							tmpFpDklMxDataBean.setFp_lb("YB");
						} else if ((jmFpData.getErrNo() == 1001)
								|| (se == 0.0D)) {
							System.out.println("[INFO] ���ڷϾ����ʷ�Ʊ");
							tmpFpDklMxDataBean.setFp_lb("FJ");
							fpzl = "FJ";
						}
						if (jmFpData.getErrNo() == 1002) {
							System.out.println("[INFO] ������ͨ��Ʊ");

							java.sql.Date rz_sj = null;
							rz_sj = new java.sql.Date(
									System.currentTimeMillis());
							SimpleDateFormat sdf = new SimpleDateFormat(
									"yyyy-MM-dd HH:mm:ss");
							rzSj = sdf.format(rz_sj);

							tmpFpDklMxDataBean.setFp_lb("P1");
							save_Code = tmpFpDklMxDataBean.doInserPvoice(conn);
							fpzl = "P1";
							String r_je = Double.toString(jmFpData.getFp_je());
							String r_se = Double.toString(jmFpData.getFp_se());
							rsj = rzSj + " " + r_je + " " + r_se;
							rzSj = rzSj + " " + r_je + " " + r_se + " "
									+ jmFpData.getFp_dm() + " "
									+ jmFpData.getFp_hm();
							if (save_Code == 1) {
								System.out.println("[INFO] ��Ʊ��֤ͨ��:" + nsrsbh
										+ ", " + rzSj + "(" + ulms + "ms)");
								result_xml = dispXmlMessage(nsrsbh, "1002",
										"��֤���(��Ʊ)", rzSj, czyDm, czyPwd);
								return result_xml;
							}
							// /String r_se;
							// String r_je;
							// SimpleDateFormat sdf;
							// java.sql.Date rz_sj;
							// double se;
							// GSRzFpdklMxDataBean tmpFpDklMxDataBean;
							// String err_subType;
							// CmpHandler cmpHandler;
							// java.sql.Date rdDate;
							// String rddate;
							// int i_err_no;
							// int save_Code;
							// int rzjg;
							// int wxyy;
							// String jmjip;
							// JmHandler curJmHandler;
							// String rzSj;
							// int jmStatus;
							// String mw4;
							// String mw3;
							// String mw2;
							// String mw1;
							// String fpid;
							// String fpmw;
							// int i_validDate;
							// String active;
							// WsrzQyUserManageCmdBean curCzyDB;
							if (save_Code == 2) {
								rzSj = tmpFpDklMxDataBean.getDs_swjg_dm();

								System.out.println("[INFO] ��Ʊ�ظ���֤:" + nsrsbh
										+ "," + rzSj + "(" + ulms + "ms)");
								result_xml = dispXmlMessage(nsrsbh, "1200",
										"�ظ���֤(��Ʊ)", rzSj, czyDm, czyPwd);
								return result_xml;
							}
							// String r_se;
							// String r_je;
							// SimpleDateFormat sdf;
							// java.sql.Date rz_sj;
							// double se;
							// GSRzFpdklMxDataBean tmpFpDklMxDataBean;
							// String err_subType;
							// CmpHandler cmpHandler;
							// java.sql.Date rdDate;
							// String rddate;
							// int i_err_no;
							// int save_Code;
							// int rzjg;
							// int wxyy;
							// String jmjip;
							// JmHandler curJmHandler;
							// String rzSj;
							// int jmStatus;
							// String mw4;
							// String mw3;
							// String mw2;
							// String mw1;
							// String fpid;
							// String fpmw;
							// int i_validDate;
							// String active;
							// WsrzQyUserManageCmdBean curCzyDB;
							System.out.println("[INFO] ��Ʊ��֤д��ݿ�����쳣:" + nsrsbh
									+ "," + rsj + "(" + ulms + "ms)");
							result_xml = dispXmlMessage(nsrsbh, "900", "�����쳣",
									rzSj, czyDm, czyPwd);
							return result_xml;
						}
						// double se;
						// GSRzFpdklMxDataBean tmpFpDklMxDataBean;
						// String err_subType;
						// CmpHandler cmpHandler;
						// java.sql.Date rdDate;
						// String rddate;
						// int i_err_no;
						// int rzjg;
						// int wxyy;
						// String jmjip;
						// JmHandler curJmHandler;
						// String rzSj;
						// int jmStatus;
						// String mw4;
						// String mw3;
						// String mw2;
						// String mw1;
						// String fpid;
						// String fpmw;
						// int i_validDate;
						// String active;
						// WsrzQyUserManageCmdBean curCzyDB;
						if (WlrzConst.isSupGDZC()) {
							tmpFpDklMxDataBean.setGdzc_bz(gdzc);
						} else {
							tmpFpDklMxDataBean.setGdzc_bz("N");
						}
						save_Code = tmpFpDklMxDataBean.doInsert(conn);

						System.out.println("[INFO] ���淵�ؽ��.." + save_Code);

						ulms = System.currentTimeMillis() - ulms;
						// GSRzFpdklMxDataBean tmpFpDklMxDataBean;
						// int save_Code;
						// String rzSj;
						if (save_Code == 1) {
							java.util.Date sj = tmpFpDklMxDataBean.getRz_Sj();

							SimpleDateFormat sdf = new SimpleDateFormat(
									"yyyy-MM-dd HH:mm:ss");
							rzSj = sdf.format(sj);

							String rtn_fpje = Double.toString(jmFpData
									.getFp_je());
							String rtn_fpse = Double.toString(jmFpData
									.getFp_se());
							if (rtn_fpje != null) {
								rzSj =

								rzSj + " " + rtn_fpje + " " + rtn_fpse + " "
										+ jmFpData.getFp_dm() + " "
										+ jmFpData.getFp_hm();
							}
							if (tmpFpDklMxDataBean.getRz_Jg() == 3) {
								result_xml = dispXmlMessage(nsrsbh, "680",
										"���ܳɹ�������ʧ�ط�Ʊ", rzSj, czyDm, czyPwd);
								return result_xml;
							}
							// String rtn_fpse;
							// String rtn_fpje;
							// SimpleDateFormat sdf;
							// java.util.Date sj;
							// double se;
							// GSRzFpdklMxDataBean tmpFpDklMxDataBean;
							// String err_subType;
							// CmpHandler cmpHandler;
							// java.sql.Date rdDate;
							// String rddate;
							// int i_err_no;
							// int save_Code;
							// int rzjg;
							// int wxyy;
							// String jmjip;
							// JmHandler curJmHandler;
							// String rzSj;
							// int jmStatus;
							// String mw4;
							// String mw3;
							// String mw2;
							// String mw1;
							// String fpid;
							// String fpmw;
							// int i_validDate;
							// String active;
							// WsrzQyUserManageCmdBean curCzyDB;
							if (fpzl.equals("YB")) {
								result_xml = dispXmlMessage(nsrsbh, "0",
										"���ܳɹ����ȶ���ȷ(��ֵ˰)", rzSj, czyDm, czyPwd);
								System.out.println("[INFO] ��֤ͨ��(��ֵ˰):" + nsrsbh
										+ "," + tmpFpDklMxDataBean.getFpdm()
										+ "-" + tmpFpDklMxDataBean.getFphm()
										+ "," + rzSj + "(" + ulms + "ms)");
								return result_xml;
							}
							// String rtn_fpse;
							// String rtn_fpje;
							// SimpleDateFormat sdf;
							// java.util.Date sj;
							// double se;
							// GSRzFpdklMxDataBean tmpFpDklMxDataBean;
							// String err_subType;
							// / CmpHandler cmpHandler;
							// java.sql.Date rdDate;
							// String rddate;
							// int i_err_no;
							// int save_Code;
							// int rzjg;
							// int wxyy;
							// String jmjip;
							// JmHandler curJmHandler;
							// String rzSj;
							// int jmStatus;
							// String mw4;
							// String mw3;
							// String mw2;
							// String mw1;
							// String fpid;
							// String fpmw;
							// int i_validDate;
							// String active;
							// WsrzQyUserManageCmdBean curCzyDB;
							if (fpzl.equals("FJ")) {
								result_xml = dispXmlMessage(nsrsbh, "1001",
										"���ܳɹ����ȶ���ȷ(�Ͼ�)", rzSj, czyDm, czyPwd);
								System.out.println("[INFO] ��֤ͨ��(�Ͼ�):" + nsrsbh
										+ "," + tmpFpDklMxDataBean.getFpdm()
										+ "-" + tmpFpDklMxDataBean.getFphm()
										+ "," + rzSj + "(" + ulms + "ms)");
								return result_xml;
							}
							// String rtn_fpse;
							// String rtn_fpje;
							// SimpleDateFormat sdf;
							// java.util.Date sj;
							// double se;
							// GSRzFpdklMxDataBean tmpFpDklMxDataBean;
							// String err_subType;
							// CmpHandler cmpHandler;
							// java.sql.Date rdDate;
							// String rddate;
							// int i_err_no;
							// int save_Code;
							// int rzjg;
							// int wxyy;
							// String jmjip;
							// JmHandler curJmHandler;
							// String rzSj;
							// int jmStatus;
							// String mw4;
							// String mw3;
							// String mw2;
							// String mw1;
							// String fpid;
							// String fpmw;
							// int i_validDate;
							// String active;
							// WsrzQyUserManageCmdBean curCzyDB;
							if (fpzl.equals("P1")) {
								result_xml = dispXmlMessage(nsrsbh, "1002",
										"���ܳɹ����ȶ���ȷ(��ͨ)", rzSj, czyDm, czyPwd);
								System.out.println("[INFO] ��֤ͨ��(��ͨ):" + nsrsbh
										+ "," + tmpFpDklMxDataBean.getFpdm()
										+ "-" + tmpFpDklMxDataBean.getFphm()
										+ "," + rzSj + "(" + ulms + "ms)");
								return result_xml;
							}
						} else {
							// double se;
							// String err_subType;
							// CmpHandler cmpHandler;
							// java.sql.Date rdDate;
							// String rddate;
							// int i_err_no;
							// int rzjg;
							// int wxyy;
							// String jmjip;
							// JmHandler curJmHandler;
							// int jmStatus;
							// String mw4;
							// String mw3;
							// String mw2;
							// String mw1;
							// String fpid;
							// String fpmw;
							// int i_validDate;
							// String active;
							// WsrzQyUserManageCmdBean curCzyDB;
							System.out.println("[INFO] ������(" + save_Code
									+ "): " + nsrsbh + ","
									+ tmpFpDklMxDataBean.getFpdm() + "-"
									+ tmpFpDklMxDataBean.getFphm() + "(" + ulms
									+ "ms)");
						}
						if (save_Code == 1) {
							save_Code = 0;
						} else if (save_Code == 2) {
							rzSj = tmpFpDklMxDataBean.getDs_swjg_dm();
							String rtn_fpje = Double.toString(jmFpData
									.getFp_je());
							String rtn_fpse = Double.toString(jmFpData
									.getFp_se());

							rzSj = rzSj + " " + rtn_fpje + " " + rtn_fpse + " "
									+ jmFpData.getFp_dm() + " "
									+ jmFpData.getFp_hm();
							save_Code = -3;
							if (fpzl.equals("YB")) {
								if (security) {
									result_xml = dispXmlMessage(nsrsbh, "650",
											"�ظ���֤(��ֵ˰��Ʊ)", rzSj, czyDm, czyPwd);
									return result_xml;
								}
								// String rtn_fpse;
								// String rtn_fpje;
								// double se;
								// GSRzFpdklMxDataBean tmpFpDklMxDataBean;
								// String err_subType;
								// CmpHandler cmpHandler;
								// java.sql.Date rdDate;
								// String rddate;
								// int i_err_no;
								// int save_Code;
								// int rzjg;
								// int wxyy;
								// String jmjip;
								// JmHandler curJmHandler;
								// String rzSj;
								// int jmStatus;
								// String mw4;
								// String mw3;
								// String mw2;
								// String mw1;
								// String fpid;
								// String fpmw;
								// int i_validDate;
								// String active;
								// WsrzQyUserManageCmdBean curCzyDB;
								result_xml = dispXmlMessage(nsrsbh, "0",
										"�ظ���֤(��ֵ˰��Ʊ)", rzSj, czyDm, czyPwd);
								return result_xml;
							}
							// String rtn_fpse;
							// String rtn_fpje;
							// double se;
							// GSRzFpdklMxDataBean tmpFpDklMxDataBean;
							// String err_subType;
							// CmpHandler cmpHandler;
							// java.sql.Date rdDate;
							// String rddate;
							// int i_err_no;
							// int save_Code;
							// int rzjg;
							// int wxyy;
							// String jmjip;
							// //JmHandler curJmHandler;
							// String rzSj;
							// int jmStatus;
							// String mw4;
							// String mw3;
							// String mw2;
							// String mw1;
							// String fpid;
							// String fpmw;
							// int i_validDate;
							// String active;
							// WsrzQyUserManageCmdBean curCzyDB;
							if (fpzl.equals("FJ")) {
								result_xml = dispXmlMessage(nsrsbh, "1100",
										"�ظ���֤(�Ͼ����ʷ�Ʊ)", rzSj, czyDm, czyPwd);
								System.out.println("[INFO] �ظ���֤(�Ͼ�):" + nsrsbh
										+ ", " + rzSj + "(" + ulms + "ms)");
								return result_xml;
							}
							// String rtn_fpse;
							// String rtn_fpje;
							// double se;
							// GSRzFpdklMxDataBean tmpFpDklMxDataBean;
							// String err_subType;
							// CmpHandler cmpHandler;
							// java.sql.Date rdDate;
							// String rddate;
							// int i_err_no;
							// int save_Code;
							// int rzjg;
							// int wxyy;
							// String jmjip;
							// JmHandler curJmHandler;
							// String rzSj;
							// int jmStatus;
							// String mw4;
							// String mw3;
							// String mw2;
							// String mw1;
							// String fpid;
							// String fpmw;
							// int i_validDate;
							// String active;
							// WsrzQyUserManageCmdBean curCzyDB;
							if (fpzl.equals("P1")) {
								result_xml = dispXmlMessage(nsrsbh, "1200",
										" �ظ���֤(��ͨ��Ʊ)", rzSj, czyDm, czyPwd);
								System.out.println("[INFO] �ظ���֤(��ͨ):" + nsrsbh
										+ ", " + rzSj + "(" + ulms + "ms)");
								return result_xml;
							}
						} else {
							// double se;
							// GSRzFpdklMxDataBean tmpFpDklMxDataBean;
							// CmpHandler cmpHandler;
							// java.sql.Date rdDate;
							// String rddate;
							// int i_err_no;
							// int save_Code;
							// int rzjg;
							// int wxyy;
							// String jmjip;
							// JmHandler curJmHandler;
							// int jmStatus;
							// String mw4;
							// String mw3;
							// String mw2;
							// String mw1;
							// String fpid;
							// String fpmw;
							// int i_validDate;
							// String active;
							// WsrzQyUserManageCmdBean curCzyDB;
							if (save_Code == 3) {
								save_Code = -1;
							}
						}
					} else {
						java.sql.Date sj = null;
						sj = new java.sql.Date(System.currentTimeMillis());
						SimpleDateFormat sdf = new SimpleDateFormat(
								"yyyy-MM-dd HH:mm:ss");
						String rSj = sdf.format(sj);

						String rtn_fpje = Double.toString(jmFpData.getFp_je());
						String rtn_fpse = Double.toString(jmFpData.getFp_se());
						if (rtn_fpje != null) {
							rSj = rSj + " " + rtn_fpje + " " + rtn_fpse;
						}
						if (err_subType.equals("1")) {
							result_xml = dispXmlMessage(nsrsbh, "590",
									"���ܳɹ������ȶԲ���ȷ", rzSj, czyDm, czyPwd);
							return result_xml;
						}
						// String rtn_fpse;
						// String rtn_fpje;
						// String rSj;
						// SimpleDateFormat sdf;
						// java.sql.Date sj;
						// String err_subType;
						// CmpHandler cmpHandler;
						// java.sql.Date rdDate;
						// String rddate;
						// int i_err_no;
						// int save_Code;
						// int rzjg;
						// int wxyy;
						// String jmjip;
						// JmHandler curJmHandler;
						// String rzSj;
						// int jmStatus;
						// /String mw4;
						// String mw3;
						// String mw2;
						// String mw1;
						// String fpid;
						// String fpmw;
						// int i_validDate;
						// String active;
						// WsrzQyUserManageCmdBean curCzyDB;
						if (err_subType.equals("2")) {
							result_xml = dispXmlMessage(nsrsbh, "600",
									"���ܳɹ������ȶԲ���ȷ", rzSj, czyDm, czyPwd);
							return result_xml;
						}
						// String rtn_fpse;
						// String rtn_fpje;
						// String rSj;
						// SimpleDateFormat sdf;
						// java.sql.Date sj;
						// String err_subType;
						// CmpHandler cmpHandler;
						// java.sql.Date rdDate;
						// String rddate;
						// int i_err_no;
						// int wxyy;
						// String jmjip;
						// JmHandler curJmHandler;
						// String rzSj;
						// int jmStatus;
						// String mw4;
						// String mw3;
						// String mw2;
						// String mw1;
						// String fpid;
						// String fpmw;
						// int i_validDate;
						// String active;
						// WsrzQyUserManageCmdBean curCzyDB;
						System.out.println("[INFO] ��֤δͨ��:" + nsrsbh + ","
								+ inFpData.getFp_dm() + "-"
								+ inFpData.getFp_hm() + "," + rzSj + "(" + ulms
								+ "ms)");
					}
					if (save_Code < 0) {
						throw new SQLException("[WARN] save error");
					}
					if ((rzjg == 0) && (save_Code != 0)) {
						System.out.println("[WARN] 700�������ʧ�ܡ�");
						result_xml = dispXmlMessage(nsrsbh, "700",
								"��ݿ�����쳣����������֤��", getCurDateTime(), czyDm,
								czyPwd);
						return result_xml;
					}
				case 400:
					// int i_err_no;
					// int save_Code;
					// String jmjip;
					// JmHandler curJmHandler;
					// String rzSj;
					// int jmStatus;
					// String mw4;
					// String mw3;
					// String mw2;
					// String mw1;
					// String fpid;
					// String fpmw;
					// int i_validDate;
					// String active;
					// WsrzQyUserManageCmdBean curCzyDB;
					// int wxyy = 128;
					// int rzjg = 5;
					result_xml = dispXmlMessage(nsrsbh, "400",
							"�ύ����˰��ʶ��ŷǷ����������ύ��֤��", getCurDateTime(), czyDm,
							czyPwd);
					return result_xml;
				case 403:
					// int i_err_no;
					// int save_Code;
					// int rzjg;
					// int wxyy;
					// String jmjip;
					// JmHandler curJmHandler;
					// String rzSj;
					// int jmStatus;
					// String mw4;
					// String mw3;
					// String mw2;
					// String mw1;
					// String fpid;
					// String fpmw;
					// int i_validDate;
					// String active;
					// WsrzQyUserManageCmdBean curCzyDB;
					System.out.println("[INFO] ��ǰ��֤���뷢Ʊ�Ĺ���������޹�:" + nsrsbh
							+ "," + inFpData.getFp_dm() + "-"
							+ inFpData.getFp_hm());

					result_xml = dispXmlMessage(nsrsbh, "403",
							"��ǰ��֤���뷢Ʊ�Ĺ���������޹أ����ܽ�����֤��", getCurDateTime(),
							czyDm, czyPwd);

					return result_xml;
				}
				// int i_err_no;
				// int save_Code;
				// int rzjg;
				// int wxyy;
				// String jmjip;
				// JmHandler curJmHandler;
				// String rzSj;
				// int jmStatus;
				// String mw4;
				// String mw3;
				// String mw2;
				// String mw1;
				// String fpid;
				// String fpmw;
				// int i_validDate;
				// String active;
				// WsrzQyUserManageCmdBean curCzyDB;
				if (((i_err_no >= 1) && (i_err_no <= 255)) || (i_err_no == -1)) {
					wxyy = 128;
					rzjg = 5;
					System.out.println("1-255:save exception info");
					result_xml = dispXmlMessage(nsrsbh, String.valueOf(255),
							"�ύ�����������������ύ��֤��", getCurDateTime(), czyDm, czyPwd);

					System.out.println("[WARN] " + i_err_no + "�޷����ܣ���˰��:"
							+ nsrsbh + ", ����Ա:" + czyDm + ", ��֤ʱ��:"
							+ getCurDateTime());
					return result_xml;
				}
				break;
			case 530:
				// String jmjip;
				// JmHandler curJmHandler;
				// String rzSj;
				// int jmStatus;
				// String mw4;
				// String mw3;
				// String mw2;
				// String mw1;
				// String fpid;
				// String fpmw;
				// int i_validDate;
				// String active;
				// WsrzQyUserManageCmdBean curCzyDB;
				System.out.println("[ERROR] 530û�п��õĽ��ܹ���վ");
				result_xml = dispXmlMessage(nsrsbh, "530", "ϵͳæ�����Ժ�����...",
						getCurDateTime(), czyDm, czyPwd);
				return result_xml;
			case 540:
				// String jmjip;
				// JmHandler curJmHandler;
				// String rzSj;
				// int jmStatus;
				// String mw4;
				// String mw3;
				// String mw2;
				// String mw1;
				// String fpid;
				// String fpmw;
				// int i_validDate;
				// String active;
				// WsrzQyUserManageCmdBean curCzyDB;
				System.out.println("[ERROR] 540���ӽ��ܹ���վʧ��");
				result_xml = dispXmlMessage(nsrsbh, "540", "���ӽ��ܹ���վʧ�ܣ��������ύ���",
						getCurDateTime(), czyDm, czyPwd);
				return result_xml;
			case 550:
				// String jmjip;
				// JmHandler curJmHandler;
				// String rzSj;
				// int jmStatus;
				// String mw4;
				// String mw3;
				// String mw2;
				// String mw1;
				// String fpid;
				// String fpmw;
				// int i_validDate;
				// String active;
				// WsrzQyUserManageCmdBean curCzyDB;
				System.out.println("[ERROR] 550�޷���ȡ���صĽ������");
				result_xml = dispXmlMessage(nsrsbh, "550", "��ȡ���ʧ�ܣ��������ύ���",
						getCurDateTime(), czyDm, czyPwd);
				return result_xml;
			default:
				// String jmjip;
				// JmHandler curJmHandler;
				// String rzSj;
				// int jmStatus;
				// String mw4;
				// String mw3;
				// String mw2;
				// String mw1;
				// String fpid;
				// //String fpmw;
				// int i_validDate;
				// String active;
				// WsrzQyUserManageCmdBean curCzyDB;
				System.out.println("[ERROR] " + jmStatus + "δ֪����");
			}
		} catch (SQLException e) {
			e.printStackTrace();
			result_xml = dispXmlMessage(nsrsbh, "700", "��ݿ�����쳣����������֤��",
					getCurDateTime(), czyDm, czyPwd);
			System.out.println("[info] ��ݿ�����쳣 " + e);
			WsrzQyUserManageCmdBean curCzyDB;
			return result_xml;
		} catch (Exception e) {
			String str1;
			e.printStackTrace();
			System.out.println("[ERROR] �����쳣, ��˰��:" + nsrsbh + " �쳣 "
					+ e.toString());
			result_xml = dispXmlMessage(nsrsbh, "800", "���������쳣",
					getCurDateTime(), czyDm, czyPwd);
			WsrzQyUserManageCmdBean curCzyDB;
			return result_xml;
		} finally {
			try {
				if ((conn != null) && (!conn.isClosed())) {
					conn.close();
					conn = null;
				}
			} catch (SQLException se) {
				System.out.println(se.getMessage());
			}
		}
		try {
			WsrzQyUserManageCmdBean curCzyDB;
			if ((conn != null) && (!conn.isClosed())) {
				conn.close();
				conn = null;
			}
		} catch (SQLException se) {
			System.out.println(se.getMessage());
		}
		WsrzQyUserManageCmdBean curCzyDB;
		return result_xml;
	}
}
